The present invention relates generally to the analysis of computer-generated images, and more particularly to a method and system for selecting at least one optimal view of a three dimensional image.
Computer-generated images are used in many different industries to model surfaces and solids. In the medical fields, computer imaging is used in combination with ultrasound imaging, magnetic resonance imaging or other medical imaging technology, to display, analyze and organize the data these medical imaging technologies provide. For example, ultrasound machines use ultrasonic wave, i.e. sonar, to scan a patient""s body. The data thus obtained is then analyzed by physicians to assist the physicians in their diagnosis and treatment of patients. Ultrasound can be used to view a fetus, blood-flow patterns in arteries, or to scan organs for irregularities such as cysts, etc.
Typically, a three dimensional image is displayed to a user by being projected on a two dimensional surface such as a screen or a print out. Computer systems have been devised that permit the user to take different cross-sectional views of the image, thereby enabling a user to view a portion of the three dimensional image by choosing one or more cross-sectional views. Some computer systems permit the user to geometrically transform the image by rotating, translating and scaling the image, and also permit the user to take cross-sectional views at different orientations, such that the user can sequentially view the three-dimensional image using a series of oblique planes. Other computer systems take a different approach instead of showing a cross-section of the three dimensional image, they xe2x80x9crenderxe2x80x9d the image by making part of the image transparent or translucent such that points under those parts are revealed. In a maximum intensity display, for example, the highest intensity points along a line parallel to the sight of the user are shown, similar to an x-ray picture of a foot.
While three dimensional images provide a wealth of information, filtering out the information that is of interest from irrelevant information can be very time-consuming. There may be many different cross-sectional views of interest in a single three dimensional image. Each of these different cross-sectional views may contain only one point of interest. If all of these cross-sectional views must be stored and subsequently reviewed, then resources may be wasted in that a great deal of irrelevant information is being stored and must be filtered out again when the cross-sectional views are again reviewed. It may also be necessary to keep track of many different cross-sectional views of the three dimensional image in order to keep track of all of the points of interest in that three dimensional image.
Accordingly, there is a need for a system and method of analyzing computer-generated images in order to filter out as much irrelevant information as possible from the cross-sectional views used to display the information of interest.
An object of one aspect of the present inventions to provide a method of analyzing a computer-generated three dimensional image and of selecting at least one view of the three dimensional image that maximizes the relevant information as compared to alternative views of the three dimensional image.
According to one aspect of the present invention there is provided a method of selecting at least one optimal surface of a three dimensional image such that the at least one optimal surface includes at least two spatial coordinates of interest. The three dimensional image is generated in a coordinate space by an image-defining array consisting of ordered image properties. Each ordered image property in the image-defining array has a unique associated spatial coordinate in the coordinate space such that each ordered image property is mappable to the unique associated spatial coordinate.
The three dimensional image also has a plurality of surfaces. Each surface has an associated image-defining subarray in the image-defining array such that each surface of the plurality of surfaces is generated by mapping each ordered image property of the associated image-defining subarray onto the unique associated spatial coordinate. This plurality of surfaces includes a selected visible surface shown in a display divided tip into a plurality of display coordinates. The display selectably displays views such that a series of distinct selected visible surfaces of the plurality of surfaces of the three dimensional image are viewable on the display. The display includes an associated one-to-one projection means for projecting each selected visible surface of the three dimension image onto the display, such that a view-specific one-to-one correspondence exists between each display coordinate and the spatial coordinate projected.
The method is implemented using a data processor having a memory, a coordinate space modeling means, a user interface means, a mapping means. The memory has access to the image-defining array. The coordinate space modeling means is loaded in memory and models and manipulates the coordinate space. The coordinate space modeling means responds to a group of commands to rotate the coordinate space, translate a selected visible surface of the coordinate space, and, pivot a selected visible surface about an arbitrary axis on the selected visible surface. The user interface means permits commands to be selected from the group of commands, and communicates with the coordinate space modeling means in order to relay selected commands to the coordinate space modeling means.
The mapping means is operable for each visible surface of the three dimensional image to map each ordered image property of the associated image-defining subarray for each visible surface onto the unique associated spatial coordinate in the coordinate space to generate the visible surface of the three dimensional image.
The method comprises the following steps. (1) The user interacts with the coordinate space via the user interface means and the coordinate space modeling means to generate a series of views of the three dimensional image in the display. Each view includes at least one selected visible surface of the three dimensional image. (2) The user then selects a plurality of spatial coordinates of interest from the series of views. Each spatial coordinate of interest in the plurality of spatial coordinates of interest is selected by selecting a display coordinate in an associated view in the series of views using the user interface means. The spatial coordinate of interest is then determined based on the associated view and the view-specific one-to-one correspondence between the selected display coordinate and the spatial coordinate of interest mapped on the selected display coordinate. (3) Next, the coordinate space is manipulated by the coordinate space modeling means to orient a selected visible surface of the coordinate space, such that the selected visible surface of the coordinate space corresponds to the at least one optimal surface.
In preferred versions of the above-described method, step 3 is executed automatically on user command after selection of at least two or three coordinates of interest.
In another preferred version of the above-described method, when at least three coordinates of interest are selected, step 3 includes the following steps. (1) Calculating a first vector by subtracting a first coordinate of interest selected from the at least three coordinates of interest from a second coordinate of interest selected from the at least three coordinates of interest. (2) Calculating a second vector by subtracting the first coordinate of interest from a third coordinate of interest selected from the at least three coordinates of interest. (3) Automatically applying the group of commands to (I) rotate the coordinate space; (ii) translate a selected visible surface of the coordinate space; and, (iii) pivot a selected visible surface about an arbitrary spatial coordinate on the selected visible surface such that an optimal plane defined by the first vector, the second vector and any one of the at least three coordinates of interest is a visible surface.
In preferred versions of the above described method, the three dimensional image includes a selected sub-image of interest and the step of interacting with the coordinate space via the user interface means and the coordinate space modeling means that generates a series of sub-image views of the selected sub-image in the display. The plurality of spatial coordinates of interest are then selected from this series of sub-image views. Conveniently, the plurality of selection points are selected automatically.
When the selected sub-image of interest is a blood vessel, each of the series of sub-image views is preferably a cross-sectional view of the blood vessel, and the plurality of spatial coordinates of interest are selected to define a line extending lengthwise within the blood vessel. Preferably, the at least one optimal surface generated includes two orthogonal optimal surfaces; and the coordinate space is manipulated via the coordinate space modeling means to orient two selected visible surfaces of the coordinate space to be aligned with the two orthogonal optimal surfaces. Conveniently, these two orthogonal optimal surfaces are concurrently projected onto the display.
In additional preferred versions of the above-described method, the coordinate space modeling means orients a sequence of selected contiguous surfaces of the coordinate space into alignment with the at least one optimal surface. Each of the sequence of selected contiguous surfaces is projected onto the display in succession to provide a moving view along the length of the blood vessel.
in accordance with another aspect of the present invention there is provided a method of selecting at least one optimal view from a plurality of views of a three dimensional image. The plurality of views is generated from an image-defining array using a data processor having a coordinate space modeling means for modeling and manipulating a coordinate space. The data processor also includes a display for showing the plurality of views of the coordinate space.
The image-defining array has a plurality of ordered image properties. Each ordered image property in the plurality of ordered image properties has a unique associated coordinate in the coordinate space such that the three dimensional image is generated in the coordinate space by mapping each ordered image property in the plurality of ordered image properties onto the unique associated coordinate in the coordinate space. Each view in the plurality of views has an associated view-defining subarray in the image-defining array, such that each view in the plurality of views is shown on the display by being generated in the coordinate space by mapping each ordered image property in the associated view-defining subarray onto the associated coordinate in the coordinate space and by being projected from the coordinated space onto the display.
The method includes the following steps:
(1) selecting a plurality of coordinates of interest in the coordinate space;
(2) determining the at least one optimal view in order to contain the plurality of coordinates in a minimum number of views;
(3) showing the at least one optimal view on the display.
In accordance with an embodiment of the present invention, there is provided a system for selecting at least one optimal surface of a three-dimensional image such that the at least one optimal surface includes at least two spatial coordinates of interest. The three dimensional image is generated in a coordinate space by an image-defining array having a plurality of ordered image properties, each ordered image property in the image-defining array having a unique associated spatial coordinate in the coordinate space such that each ordered image property is mappable to the unique associated spatial coordinate. The three dimensional image has a plurality of surfaces, each surface of the plurality of surfaces having an associated image-defining subarray in the image-defining array such that each surface of the plurality of surfaces is generated by mapping each ordered image property of the associated image-defining subarray onto the unique associated spatial coordinate. The plurality of surfaces includes a selected visible surface shown in a display.
The display is divided up into a plurality of display coordinates, and selectably displays views such that a series of distinct selected visible surfaces of the plurality of surfaces of the three dimensional image are viewable thereon. The display has an associated one-to-one projection means for projecting each selected visible surface of the three dimensional image onto the display, such that a view-specific one-to-one correspondence exists between each display coordinate and the spatial coordinate projected thereon.
The three dimensional image is generated using a data processor having a memory, a coordinate space modeling means, a user interface means, a mapping means. The memory has access to the image-defining array. The coordinate space modeling means is loaded in memory and models and manipulates the coordinate space. The coordinate space modeling means responds to a group of commands to rotate the coordinate space, translate a selected visible surface of the coordinate space, and, pivot a selected visible surface about an arbitrary axis on the selected visible surface. The user interface means permits commands to be selected from the group of commands, and communicates with the coordinate space modeling means in order to relay selected commands to the coordinate space modeling means.
The mapping means is operable for each visible surface of the three dimensional image to map each ordered image property of the associated image-defining subarray for each visible surface onto the unique associated spatial coordinate in the coordinate space to generate the visible surface of the three dimensional image.
The system includes coordinate selection means operable to select a plurality of spatial coordinates of interest from a series of views generated using user interface means and the coordinate space modeling means, each view including at least one selected visible surface of the three dimensional image. Each spatial coordinate of interest in the plurality of spatial coordinates of interest is selected by selecting a display coordinate in an associated view in the series of views using the user interface means, and by determining the spatial coordinate of interest based on the associated view and the view-specific one-to-one correspondence between the selected display coordinate and the spatial coordinate of interest mapped thereon. The system also includes an optimal surface generation means operable to manipulate the coordinate space via the coordinate space modeling means to orient a selected visible surface of the coordinate space, such that the selected visible surface of the coordinate space corresponds to the at least one optimal surface.
Preferably, the three dimensional image includes a selected sub-image of interest, and the user interface means and the coordinate space modeling means of the system are operable to generate a series of sub-image views of the selected sub-image. The coordinate selection means is operable to select the plurality of spatial coordinates of interest from the series of sub-image views. Where the selected sub-image of interest is a blood vessel, the user interface means and the coordinate space modeling means are operable to generate the series of sub-image views as a plurality of cross-sectional views of the blood vessel, and the plurality of spatial coordinates of interest are selected to define a line extending lengthwise within the blood vessel.
Preferably, the at least one optimal surface generated by the system includes two orthogonal optimal surfaces, and the optimal surface generation means is operable to manipulate the coordinate space via the coordinate space modeling means to orient two selected visible surfaces of the coordinate space to be aligned with the two orthogonal optimal surfaces. Conveniently, the display and the associated one-to-one projection means are operable to concurrently project the two orthogonal optimal surfaces onto the display.
Preferably, the coordinate space modeling means of the system is operable to orient a sequence of selected contiguous surfaces of the coordinate space into alignment with the at least one optimal surface, and the one-to-one projection means of the system is operable to successively project each of the sequence of selected contiguous surfaces onto the display to provide a moving view along the length of the blood vessel.
In a further preferred embodiment of the invention, the system includes recognition means for recognizing the sub-image of interest, and automatic point selection means for automatically selecting the plurality of selection points.
In accordance with another embodiment of the present invention there is provided a system for viewing at least one coordinate of interest in a three dimensional image generated on a data processor having a coordinate space modeling means for modeling and manipulating a coordinate space and a display for simultaneously showing at least three views of the three dimensional image. The system includes point selection means for selecting an arbitrary coordinate of interest from a first view in the plurality of views, and also includes orthogonal view generation means for generating two mutually orthogonal views on the display. Both of the two mutually orthogonal views on the display are orthogonal to the first view and intersect with the first view at the arbitrary coordinate of interest such that the arbitrary coordinate of interest can be viewed from three orthogonal directions simultaneously.
In accordance with a further aspect of the present invention, there is provided a method of selecting at least one optimal view of a selected sub-image of a three dimensional image. The three dimensional image is generated from an image-defining array using a data processor having a coordinate space modeling means for modeling and manipulating a coordinate space, and a display for showing a plurality of views of the coordinate space.
The image-defining array has a plurality of ordered image properties and each ordered image property in the plurality of ordered image properties has a unique associated coordinate in the coordinate space such that the three dimensional image is generated in the coordinate space by mapping each ordered image property in the plurality of ordered image properties onto the unique associated coordinate in the coordinate space. Each view in the plurality of views has an associated view-defining subarray in the image-defining array, such that each view in the plurality of views is shown on the display by being generated in the coordinate space by mapping each ordered image property in the associated view-defining subarray onto the associated coordinate in the coordinate space and by being projected from the coordinated space onto the display.
The method includes the following steps:
(1) selecting a plurality of selection points in the sub-image of interest from the plurality of views;
(2) determining the at least one optimal view in order to contain a maximum number of said plurality of selection points;
(3) showing the at least one optimal view on the display.
In accordance with a further embodiment of the invention, there is provided a system for selecting at least one optimal view of a selected sub-image of a three dimensional image generated from an image-defining array using a data processor having a coordinate space modeling means for modeling and manipulating a coordinate space. The system also includes a display for showing a plurality of views of the coordinate space.
The image-defining array has a plurality of ordered image properties, each ordered image property in the plurality of ordered image properties has a unique associated coordinate in the coordinate space such that the three dimensional image is generated in the coordinate space by mapping each ordered image property in the plurality of ordered image properties onto the unique associated coordinate in the coordinate space. Each view in the plurality of views has an associated view-defining subarray in the image-defining array, such that each view in the plurality of views is shown on the display by being generated in the coordinate space by mapping each ordered image property in the associated view-defining subarray onto the associated coordinate in the coordinate space and by being projected from the coordinate space onto the display
The system comprises
(1) selection means for selecting a plurality of selection points in the sub-image of interest from the plurality of views; and,
(2) optimal view generation means for generating the at least one optimal view to contain a maximum number of the plurality of selection points.